From: Ray Strode Date: Sun, 5 Oct 2014 20:27:00 +0000 (-0400) Subject: gdm: disallow cancel after verification succeeds X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~1969 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=5d440fa8d976cb8ab10c13ff304470292eac9378;p=gnome-shell.git gdm: disallow cancel after verification succeeds Once verification has succeeded, the train's already left the building and we shouldn't allow canceling. This commit renders the cancel button non-reactive and makes the cancel function be a noop after verification succeeds. https://bugzilla.gnome.org/show_bug.cgi?id=740141 --- diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js index 1e51faa5c..26a4e2c2d 100644 --- a/js/gdm/authPrompt.js +++ b/js/gdm/authPrompt.js @@ -261,6 +261,7 @@ const AuthPrompt = new Lang.Class({ _onVerificationComplete: function() { this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED; + this.cancelButton.reactive = false; }, _onReset: function() { @@ -432,6 +433,7 @@ const AuthPrompt = new Lang.Class({ reset: function() { let oldStatus = this.verificationStatus; this.verificationStatus = AuthPromptStatus.NOT_VERIFYING; + this.cancelButton.reactive = true; if (oldStatus == AuthPromptStatus.VERIFYING) this._userVerifier.cancel(); @@ -500,6 +502,9 @@ const AuthPrompt = new Lang.Class({ }, cancel: function() { + if (this.verificationStatus == AuthPromptStatus.NOT_VERIFYING || this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) { + return; + } this.reset(); this.emit('cancelled'); }